import axios from 'axios'
// 封装代理方式
class Http {
    getInstance() {
        let instance = axios.create()
        this.responseInterceptor(instance)
        return instance
    } 
    // 响应拦截器
    responseInterceptor(instance){
        instance.interceptors.response.use(function(response){
            // 简化了每次axios得到的数据中会有一个data字段
            return response.data;
        }, function(error){
            return Promise.reject(error)
        })
    }
    
    get(url) {
        return this.getInstance().get(url)
    }
    post(url, data = {}, opts = {}) {
        return this.getInstance().post(url, data)
    }
}
// 每次返回的都是新的，输出实例化对象
export default new Http();